// app/src/main/java/no/nordicsemi/android/nrfmesh/auth/ui/SplashActivity.java
package no.nordicsemi.android.nrfmesh.auth.ui;

import android.content.Intent;
import android.os.Bundle;

import androidx.appcompat.app.AppCompatActivity;

import no.nordicsemi.android.nrfmesh.auth.session.SessionManager;
import no.nordicsemi.android.nrfmesh.widgets.CustomControlsActivity;
import no.nordicsemi.android.nrfmesh.widgets.UserMainActivity;

public class SplashActivity extends AppCompatActivity {

    @Override protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // 读取一次性闩锁（登出时被设置；在 AuthActivity 里也会消费，但这里再兜一层逻辑更直观）
        final SessionManager session = new SessionManager(this);
        final boolean skipByLatch = session.consumeSkipAutoLoginOnce();

        // 如果已有会话，且这次不要求跳过自动登录 → 直接进主页（按角色分流）
        if (session.isLoggedIn() && !skipByLatch) {
            Class<?> target = "USER".equals(session.getRole())
                    ? UserMainActivity.class
                    : CustomControlsActivity.class;
            startActivity(new Intent(this, target));
            finish();
            return;
        }

        // 否则进入 AuthActivity：
        // - 不再强行附加 EXTRA_SKIP_AUTO_LOGIN=true（之前这行导致“永远不自动登录”）
        // - 是否跳过交给 AuthActivity 根据闩锁/显式参数判断
        Intent i = new Intent(this, AuthActivity.class);
        startActivity(i);
        finish();
    }
}
